#ifndef __PROTOCOLPARSER_H__
#define __PROTOCOLPARSER_H__

/*
解析数据类, 采用 JSON 序列化与反序列化方案
*/

#include <nlohmann/json.hpp>
#include <string>
#include <vector>

using std::string;
using std::vector;

using nlohmann::json; 

class ProtocolParser
{
public:
    ProtocolParser();
    ~ProtocolParser();

    // json 对象转 json 字符串
    static string JsontoString(const json& j);

    // json 字符串转 json 对象
    static json doParse(const string& data);

    // vector<string> 转换为 json 数组
    static json vectorTojson(const vector<string>& s);

    // json 数组转换为 vector<string>
    static void jsonTovector(const json& j, vector<string>& v);
};

#endif  
